/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package localizacao.banco;

import estruturas.IdString;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import principal.banco.bd;

/**
 *
 * @author J.C.Lazzarim
 */
public class bd_estado
{

    public static ArrayList<IdString> puxaEstado(Object pais1) throws SQLException
    {
        ResultSet t = null;
        IdString pais = (IdString) pais1;
        ArrayList<IdString> array = new ArrayList<>();
//        try
//        {
        PreparedStatement p = bd.getConnection().prepareStatement("SELECT kestado,nome FROM estado WHERE kpais = (SELECT kpais from pais where nome = ?) order by nome,kestado;");
        p.setString(1, pais.getString());

        t = p.executeQuery();
        while (t.next())
        {
            IdString a = new IdString();
            a.setId(t.getInt("kestado"));
            a.setString(t.getString("nome"));
            array.add(a);
        }
        //System.out.println(t.getInt(t.findColumn("kuser")));

        if (array.isEmpty())
        {
            //tela_erro te = new tela_erro("Não há estados cadastrados.");
        }
//        } catch (SQLException ex)
//        {
//            tela_erro tela_erro = new tela_erro("Erro ao pegar lista de estados!\n"+ex.getMessage());
//        }

        return array;


    }

    public static boolean addEstado(String estado, int id) throws SQLException
    {
        String sql = "INSERT INTO estado(nome,kpais) "
                + "VALUES('" + estado + "','" + id + "') ";
//        try
//        {
        bd.query(sql);

//        } catch (SQLException ex)
//        {
//            tela_erro tela_erro = new tela_erro("Erro ao cadastrar estado!\n" + ex + "\n" + sql);
//            return false;
//        }
        return true;
    }

    public static boolean delEstado(String id) throws SQLException
    {
        String sql = "delete from  estado where kestado IN( " + id + ");";
//        try
//        {
        bd.query(sql);

//        } catch (SQLException ex)
//        {
//            tela_erro tela_erro = new tela_erro("Erro ao apagar estado!\n" + ex + "\n" + sql);
//            return false;
//        }
        return true;
    }

    public static boolean editEstado(int id, String estado, int kpais) throws SQLException
    {
        String sql = "UPDATE estado SET nome = '" + estado + "', kpais = '" + kpais + "' where kestado = '" + id + "';";
//        try
//        {
        bd.query(sql);

//        } catch (SQLException ex)
//        {
//            tela_erro tela_erro = new tela_erro("Erro ao editar estado!\n" + ex + "\n" + sql);
//            return false;
//        }
        return true;
    }
}
